package com.shujia.wyh.regulardemo;

/*
元字符（量词分类）
    ?:出现了0次或者1次
    +:代表出现了1次或者多次
    *:代表出现了任意次
    {n}:代表出现了n次
    {n,m}:出现了n-m次
    {n,}:代表出现了至少n次
 */
public class RegularDemo7 {
    public static void main(String[] args) {
        String line = "qqqqqqqabc123AAAABBB1123abcabcabc123123123QWEabcccqweabc";
        System.out.println(line);
        System.out.println("-------------------------------------");
        //匹配一个组合出现多次
//        String regex1 = "abc?";
//        System.out.println(line.replaceAll(regex1,"_"));
//
//        String regex2 = "123+";
//        System.out.println(line.replaceAll(regex2,"_"));
//
//        String regex3 = "abc*";
//        System.out.println(line.replaceAll(regex3,"_"));

        //匹配单个字符出现多次
//        String regex4 = "^q?";
//        System.out.println(line.replaceAll(regex4,"_"));
//
//        String regex5 = "^q+";
//        System.out.println(line.replaceAll(regex5,"_"));

//        String regex5 = "^q*";  // 任意次，包含了0次
//        System.out.println(line.replaceAll(regex5,"_"));

        /**
         * 判断最近的那个字符或者组合出现了次数
         *     {n}:代表出现了n次
         *     {n,m}:出现了n-m次  [n,m]
         *     {n,}:代表出现了至少n次
         */
        //qqqqqqqabc123AAAABBB1123abcabcabc123123123QWEqweabc
//        String regex6 = "(abc){2}";  //如果是多个字符组成的组合，使用小括号括起来表示是一个组合
//        System.out.println(line.replaceAll(regex6,"_"));

//        String regex7 = "^q{1,5}";
//        System.out.println(line.replaceAll(regex7,"_"));

        String regex8 = "^q{8,}";
        System.out.println(line.replaceAll(regex8,"_"));






    }
}
